#ifndef STATE_H
#define STATE_H

#include <windows.h>

template <class EntityType>

class State
{

public:
	virtual ~State(){}		//Base deconstructor		

	virtual void Enter(EntityType*) = 0;	//Call to enter state		//A good place to change LOCATION
	virtual void Execute(EntityType*) = 0;	//Body of state				//The action should happen here.
	virtual void Exit(EntityType*) = 0;		//Call to exit state		//Good place to announce next action

};

#endif